package com.yungu.swift.order.service;

import com.github.miemiedev.mybatis.paginator.domain.PageList;
import com.yungu.swift.base.ResponseData;
import com.yungu.swift.base.model.api.ApiPageParam;
import com.yungu.swift.base.service.BaseService;
import com.yungu.swift.order.model.dto.OrderEvaluateDto;


/**
 * OrderEvaluateService
 **/

public interface OrderEvaluateService extends BaseService<OrderEvaluateDto> {

    /**
     * 获取司机评价信息
     *
     * @param uuid         参数
     * @param apiPageParam 参数
     * @return List
     */
    ResponseData<PageList<OrderEvaluateDto>> getListOfEvaluate(String uuid, ApiPageParam apiPageParam);

    /**
     * 保存评价
     *
     * @param userUuid  乘客编号
     * @param orderUuid 订单编号
     * @param comment   评价内容
     * @param commentId 评价标签
     * @param score     评分
     * @return AjaxList
     */
    ResponseData<String> addComment(String userUuid, String orderUuid, String comment, String commentId, Double score);

    /**
     * 获取司机近一百条订单
     *
     * @param uuid   参数
     * @param start  参数
     * @param length 参数
     * @return Double
     */
    ResponseData<Double> findAverageScoreByLength(String uuid, Integer start, Integer length);
}